#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
class Solution {
public:
    string modifyString(string s)
    {
        int pos = 0;
        while (pos != -1)
        {
            pos = s.find('?', pos);
            for (char isert = 'a'; isert <= 'z'; isert++)
            {
                if (pos > 0 && pos < s.size() - 1 && s[pos - 1] != isert && s[pos + 1] != isert)
                {
                    s[pos] = isert;
                    break;
                }
                if (pos == 0 && s[pos + 1] != isert)
                {
                    s[pos] = isert;
                    cout << 1 << endl;
                    break;
                }
                if (pos == s.size() - 1 && s[pos - 1] != isert)
                {
                    s[pos] = isert;
                    break;
                }
            }
            if (pos == -1)
                break;
            pos += 1;
        }
        return s;
    }
};
int main()
{
    Solution s1;
    string s;
    string ret;
    ret=s1.modifyString(s);


	return 0;
}